package com.zhijian.warehouse.manage.entity.vo.response;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * 实验报告vo类
 *
 * @author HCG
 * @version 1.0
 * @date 2023-11-16
 */
@Data
@Api(tags = "实验报告vo类")
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ExpWorkOrderReportVo implements Serializable {

    private static final long serialVersionUID = 7249863200087185828L;

    /**
     * 主键ID
     */
    @ApiModelProperty("主键ID")
    private String id;

    /**
     * 生产指令单ID
     */
    @ApiModelProperty("生产指令单ID")
    private String baseId;

    /**
     * 具体工序实验单ID
     */
    @ApiModelProperty("具体工序实验单ID")
    private String dataId;

    /**
     * 工单编号，指令单单号
     */
    @ApiModelProperty("工单编号，指令单单号")
    private String number;

    /**
     * 品名
     */
    @ApiModelProperty("品名")
    private String productName;

    /**
     * 规格
     */
    @ApiModelProperty("规格")
    private String productSpecifications;

    /**
     * 起草人员ID
     */
    @ApiModelProperty("起草人员ID")
    private Long startUserId;

    /**
     * 起草人员名称
     */
    @ApiModelProperty("起草人员名称")
    private String startUserName;

    /**
     * 分发部门，班级-小组的格式
     */
    @ApiModelProperty(value = "分发部门，班级-小组的格式", hidden = true)
    private String dept;

    /**
     * 班级ID
     */
    @ApiModelProperty("班级ID")
    private Long classId;

    /**
     * 班级名称
     */
    @ApiModelProperty("班级名称")
    private String className;

    /**
     * 小组ID
     */
    @ApiModelProperty("小组ID")
    private Long groupId;

    /**
     * 小组名称
     */
    @ApiModelProperty("小组名称")
    private String groupName;

    /**
     * 生产工序
     */
    @ApiModelProperty("生产工序")
    private String step;

    /**
     * 生产工序枚举数字
     */
    @ApiModelProperty("生产工序枚举数字")
    private Integer stepType;

    /**
     * 批号
     */
    @ApiModelProperty("批号")
    private String produceBatchNumber;

    /**
     * 班次，生产批号
     */
    @ApiModelProperty("班次，生产批号")
    private String produceBatchNumberWithGroup;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 最新修改时间
     */
    @ApiModelProperty("最新修改时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
